home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / dbase / dbpass10.zip / DBPASS10.TXT < prev    next >
Text File  |  1992-03-12  |  6KB  |  154 lines

  1.                           **    dBPASS v1.0    **
  2.                        Password routines for dBase IV
  3.                             by Frederico Terenas
  4.                                   11-03-92
  5.  
  6.  
  7.        This package contains some simple routines to implement password 
  8.     protection in dBase IV applications.
  9.  
  10.        The need for password protection occurred recently, when usage of 
  11.     a commercial application I developed which stored important technical
  12.     services information had to be restricted to the officer-in-charge. 
  13.        
  14.        Many thanks to my brother Sérgio, for devising this simple (yet
  15.     efficient) encryption method (more about this later) and everyone
  16.     in groups comp.databases and bit.listserv.dbase-l who helped me.
  17.  
  18.        This package is published as shareware and you are encouraged to
  19.     distribute it provided it is complete and no fees are charged
  20.     (a small fee can be charged to cover distribution costs). The source
  21.     code can be freely changed to suit particular requirements.
  22.  
  23.        Users are urged to register with me so I can provide further
  24.     technical support, and upgrades. Registration is FREE. 
  25.  
  26.        To register, please E-mail me at: 
  27.  
  28.                        cs_a264@Kingston.ac.uk
  29.  
  30.        or send a letter to:
  31.  
  32.                        Frederico Terenas
  33.                        Matto Grosso 1459
  34.                        Las condes
  35.                        Santiago
  36.                        CHILE
  37.  
  38.       stating your E-mail address (or postal address) and any thing
  39.       else you want to ask the author.
  40.  
  41.       I expect no money from anyone! If I see that there is enough
  42.    interest from the database community, I will provide further routines,
  43.    using different password encryption methods. Some of these methods
  44.    are being studied at present. Please, support the author, by pointing
  45.    out improvements, suggestions, or any bugs you find.
  46.  
  47.  
  48.     The package comprises 3 program files:
  49.  
  50.     ===============================================================
  51.     PASSCHEK.PRG  -  Routine to check that password typed at the
  52.                      keyboard matches the one stored in file,
  53.  
  54.     PASSEDIT.PRG  -  Routine to change the password store in the
  55.                      file. You must type the current password in
  56.                      order to change it,
  57.  
  58.     DEMODBPW.PRG  -  Simple program to demo use of routines.    
  59.     ===============================================================
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.         The Encryption.
  69.  
  70.         The  chosen password is transformed via some algorithm in 
  71.     order to be unrecognizable by other users, or people trying to 
  72.     break into your system. The algorithm that performs this is in
  73.     the file PASSEDIT.PRG .
  74.  
  75.         The algorithm in this version, gets the ordinal value of
  76.     each character that makes up the password. Then it adds this value
  77.     to a pre-determined value, the encryption factor (stored as ENC_FACTOR).
  78.     You can change this value at any time. The new value, representing
  79.     each character is stored in an array and saved to a .MEM file.
  80.     This file, when viewed with the TYPE command of DOS, doesn't reveal
  81.     the password, but some unreadable characters.
  82.  
  83.  
  84.         Checking if typed password is correct.
  85.  
  86.         The routine that checks if the password typed is the same as
  87.     the one stored in the .MEM file is PASSCHEK.PRG . If the password
  88.     entered is incorrect it leaves the program running by issuing a
  89.     CANCEL command. If the password entered is correct, control returns
  90.     to the calling program and this program can proceed.
  91.  
  92.         Tip: Put a call to this routine at the beginning of your
  93.              application. If the password isn't entered correctly,
  94.              the routine forces your application to return to DOS.
  95.  
  96.  
  97.         Changing password.
  98.  
  99.         The routine responsible for this is called PASSEDIT.PRG . 
  100.      This routine prompts the user to type the current password, 
  101.      checks if this matches the password stored in the .MEM file and
  102.      only if it is correct allows the user to proceed and change the 
  103.      password. Any character can be used, but users should beware
  104.      of using spaces or characters other than those they can remember.
  105.      The user is then prompted to enter the new password, and once
  106.      more to make sure the user remembers the password previously 
  107.      entered. If these don't match, the password remains unchanged.
  108.  
  109.         Tip: Don't use spaces in your password. This becomes confusing. 
  110.              Use both numbers and letters. This should be difficult
  111.              enough for someone unauthorised to guess.
  112.  
  113.  
  114.         Disabling password verification.
  115.  
  116.         The user can make the password checking routine (PASSCHEK.PRG) 
  117.      skip the password verification by changing the password to
  118.      <RETURN> (pressing the RETURN key). When changing the password,
  119.      after typing the current password (and this being accepted), 
  120.      pressing <RETURN> twice causes the password to be disabled, that
  121.      is, the password checking routine doesn't check for a password.
  122.      Password verification can be restored by changing the current 
  123.      password (which is pressing the RETURN key) to a new name, as 
  124.      described previously.
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.         The Demo!
  137.  
  138.         The user should have an insight into the capabilities of this
  139.      package and now should load dBase IV and run the program DEMODBPW.PRG
  140.      for a demonstration of the routines in this package. The Demo is menu
  141.      driven and easy to use. The source code for the Demo is included.
  142.  
  143.      The current password is:  FRED      (please NOTE capital letters)
  144.  
  145.  
  146.      Good luck.
  147.  
  148.      Frederico Terenas
  149.      e-mail: cs_a264@Kingston.ac.uk
  150.  
  151.  
  152.  
  153.  
  154.